//
//  BuildingConstructionLogicSystem.h
//  projecthz
//
//  Created by YDJH on 2017/5/11.
//  Copyright © 2017年 tali. All rights reserved.
//  生成建筑物结构的逻辑处理

/*
 建筑：沙盘->沙盘家具（显示和隐式）-> 楼 -> 房间(大厅，地下室，楼梯间...) -> 外墙(家具) -> 内墙(根据外墙生成后墙家具，其他墙的家具)
  楼：___________________________|
 
 左一楼梯间的右边是根据下一个房间所决定 右最后一个楼梯间门右左边房间所决定  楼梯间本身不带有门家具
 plist文件中建筑的顺序将决定该大厅显示在第几层
 */

#import <Foundation/Foundation.h>

#import "HZBuilding.h"
#import "HZRoom.h"
#import "RoomData.h"
#import "BuildingData.h"
#import "FurnitureData.h"

@interface BuildingConstructionLogicSystem : NSObject


@property (nonatomic,strong)NSArray *roomDataArr; //房间模型集合

@property (nonatomic,strong)NSArray *buildingDataArr; //建筑物模型集合

@property (nonatomic,strong)NSArray *furnitureDataArr; // 道具模型集合


@property (nonatomic,strong)BuildingData *buildingModel;              //建筑模型;

@property (nonatomic,strong)RoomData *staircaseRoom;                  //楼梯间房间模型

@property (nonatomic,strong)RoomData *officeRoom;                     //办公室房间模型

@property (nonatomic,strong)NSMutableArray *roomTypeArr;          //该建筑包含的房间

@property (nonatomic,strong)NSMutableArray *lobbyTypeArr;         //该建筑包含的大厅

@property (nonatomic,strong)NSMutableArray *furnitureArr;         //家具模型数组

@property (nonatomic,copy) NSString *structure;            //建筑轮廓  4,5

@property (nonatomic,strong)NSMutableArray *buildingStructure;  //建筑内部结构

@property (nonatomic,strong)NSIndexPath *currentIndex;   //初始第一个房间位置 当前所处的房间的位置

@property (nonatomic,strong)HZRoom *currentRoom;         //初始第一个房间模型

+(BuildingConstructionLogicSystem*)standardBuildingConstructionLogicSystem;
//- (NSMutableArray *)buildingConstructionLogicWithBuildingType:(NSString *)type;

- (HZConstruction *)configureHZConstructionWith:(NSString *)type;

@end
